Absolute position measurement

ABSTRACT

An absolute measurement scale  18  comprises an incremental scale  10  with light reflecting lines  12  alternating with non-light reflecting lines  14  in which absolute data, in the form of discrete codewords, is embedded in the incremental scale by removing light reflecting lines  22 . The codewords are arranged such that the scale is palindromic and cyclic. A look-up table is used to determine a coarse absolute position by comparing absolute position data extracted from the scale with absolute codewords in the look-up table. The absolute position is determined by combining the coarse absolute position with the position of the start of the first codeword in the data extracted. The absolute position may be determined to within a scale pitch by combining the absolute position with the incremental position.

FIELD OF THE INVENTION

[0001] The present invention relates to the measurement of the absoluteposition of an object.

DESCRIPTION OF PRIOR ART

[0002] An incremental position encoder is a device for measuring therelative position of two objects. Typically a scale is attached to oneof the objects and a readhead to the other, the scale having regularlyspaced identical markings on it. The readhead projects light onto thescale which, depending on the configuration of the scale, is then eitherreflected or transmitted. From the reflected or transmitted light, thereadhead generates a series of signals which may be used to generate anincremental count indicative of the relative displacement of the twoobjects. The readhead may provide some electronic interpolation suchthat the resolution is higher than would be achieved by direct countingof the markings on the scale. In some cases the outputs are analogue(often two sinusoidal in quadrature) to allow electronics external tothe readhead to perform the interpolation. An incremental encoder has noknowledge of the readhead's absolute position along the scale.

[0003] An absolute encoder typically comprises a scale with data writtenon it in the form of a pseudorandom sequence or discrete codewords. Byreading this data as the readhead passes over the scale the readhead candetermine its absolute position.

[0004] Hybrid incremental absolute position encoders also exist. As itis possible to make incremental encoders with finer resolution thanabsolute encoders, many absolute encoders also incorporate separateincremental channels. The absolute channel gives absolute positionaccurate to at least one period of the incremental channel.Interpolation of the incremental channel gives position within theperiod of the incremental channel to the desired fine resolution.Combined together, the two systems give absolute position to a fineresolution. However, as the absolute channel and the incremental channelare in separate tracks, yawing of the readhead can result in errors whencombining the incremental and absolute position. Furthermore, when fixedin position the scale must be in the correct orientation such that theincremental and absolute tracks are aligned with the respectivereadheads.

[0005] A hybrid incremental absolute position encoder is disclosed inEuropean Patent No. 0503716 in which the absolute channel consisting ofa pseudo-random code and incremental channel are combined to form asingle composite channel.

SUMMARY OF THE INVENTION

[0006] A first aspect of the present invention provides a measurementscale comprising:

[0007] an incremental scale track comprising a series of lines having afirst property, generally alternating with lines having a secondproperty;

[0008] characterised in that absolute position data is embedded in theincremental scale track in the form of discrete codewords.

[0009] Preferably the lines having a first property are light reflectingor light transmitting and wherein the lines having a second property arenon-reflecting or non-transmitting.

[0010] Preferably extra or fewer lines are provided having one of saidproperties, compared to those having the other property, in patternswhich form said codewords thereby embedding the absolute date in theincremental scale track. Alternatively the width or spacing of the linesin the incremental scale track are varied, thereby embedding theabsolute data in the incremental scale track.

[0011] Preferably the lines having the first of second property extendsubstantially across the width of the scale. The absolute data on thescale may be palindromic.

[0012] The absolute data may be divided into discrete codewords, thebeginning of each codeword being marked by an identical start symbol.The absolute data in both the codewords and the start symbols mayconsist of binary codes.

[0013] Preferably the codewords define N unique positions over a lengthof scale, this length being repeated such that the (N+1)^(th) positionis the same as the 1^(st) position etc.

[0014] A second aspect of the invention provides a system for measuringabsolute position comprising a measurement scale and a scale readerrelatively movable with respect to each other;

[0015] wherein the measurement scale comprises an incremental scaletrack with lines having a first property generally alternating withlines having a second property and absolute position data is embedded inthe incremental scale track in the form of discrete codewords;

[0016] and the scale reader includes a light source to illuminate thescale, an incremental readhead to determine the incremental position andan imaging system and a detector system to determine the absoluteposition.

[0017] Preferably the readhead used to determine the incrementalposition is a filtering readhead.

[0018] Preferably each absolute bit of data has a value of 1 or 0,wherein there is a clock bit with a value of 0 between each absolutedata bit; wherein it is determined whether any bit of the scale is anabsolute data bit or a clock bit by measuring the values of the(m+1)^(th) bits on either side of that bit, where m=any even integer;and wherein the values of these bits are summed together, such that ifthe sum is smaller than a predetermined value the bit is an absolutedata bit.

[0019] Preferably a look-up table is used to determine a coarse absoluteposition by comparing absolute position data extracted from the scalewith absolute codewords in the look-up table. The absolute position maybe determined to within one incremental scale pitch by combining thecoarse absolute position with the position of the start of the firstcodeword in the data extracted by the detector system and the locationof the first complete data bit in the data extracted by the detectorsystem. The absolute position may be determined to within a fraction ofthe scale pitch by combining the absolute position with the incrementalposition.

BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Preferred embodiments of the present invention will beillustrated by way of example with reference to the accompanyingdrawings, wherein:

[0021] FIGS. 1A-1D are schematic representations of an incrementalscale, an absolute scale and a hybrid scale;

[0022]FIGS. 2A and 2B are schematic representations of codewords on thepalindromic scale;

[0023]FIGS. 3A and 3B show the cyclic nature of the scale;

[0024]FIGS. 4A and 4B are schematic representations of the palindromicand cyclic scale with two and three palindromic codewords per repeatlength respectively;

[0025]FIG. 5 is a schematic representation of a hybrid scale and a rowof pixels from the imaging optics in the readhead; and

[0026]FIG. 6 is a micro lens array;

[0027]FIG. 7 is a flow diagram for the process of determining coarseabsolute position; and

[0028]FIG. 8 is a schematic representation of the readhead and scale.

DESCRIPTION OF PREFERRED EMBODIMENTS

[0029]FIG. 1A represents a length of incremental scale 10. Theincremental scale has a repeating pattern of reflective lines 12 andnon-reflective lines 14. FIG. 1B shows a length of absolute scale 16.This scale also comprises reflective 12 and non-reflective lines 14 eachrepresenting a bit of absolute data which are combined to form a code todefine the absolute position.

[0030]FIGS. 1C and 1D show the incremental and absolute scales of 1A and1B combined 18. One bit of absolute data is embedded per pitch of theincremental scale. In this example the coding is binary and thus thereare two possible states 1 and 0. For state 1 in the absolute scale thereflective line in the incremental scale is left in its original state20. For state 0 the reflective line of the incremental scale is removed,as shown at 22.

[0031] Removal of parts of the incremental pattern degrade the signalfrom the incremental channel, however the effect is not serious if thedamage is consistent along the scale. In this example reflective linesof the incremental scale are removed resulting in a drop in theincremental signal, but also a drop in the background light by the sameratio; However, if reflective lines are added instead this would resultin a drop in the incremental signal by the same amount but also anincrease in the background light.

[0032] Absolute data may be embedded in the incremental scale withoutthe addition or removal of incremental lines. Instead the width of linesor the distance between lines may be varied.

[0033] As the absolute data is embedded in the incremental scale, thescale may be prismatic. This means that it is uniform along its width asseen in FIG. 1D, instead of using parallel data tracks as in previouslyknown hybrid incremental and absolute scales. This overcomes threeshortcomings of “parallel-track” systems. Firstly, it is possible forthe readhead to be mounted either way round with respect to the scale.Secondly, yawing of the readhead is not so critical as there is not theneed to keep parallel tracks phased relative to each other. Thirdly,there is no restriction on the lateral offset tolerance of the readheadwith respect to the scale.

[0034] The absolute data embedded in the incremental scale is designedto be palindromic. This means that the absolute data on the scale isprecisely the same if read from either end of the code sequence. FIG. 2Ashows two codewords A and B on a scale. If the scale is rotated by 180°,as shown in FIG. 2B, the scale will be identical. Codeword B isidentical to the original A and is in the same position, whilst codewordA is identical to the original B and again is in the same position. Thisenables a scale to be mounted on a surface in either orientation withoutthe need for reprogramming or the need to change the orientation of thereadhead.

[0035] The absolute data on the scale defines unique positions over acertain length which may be several metres long. Beyond that length thecoding repeats seamlessly so that the coding has no beginning or end. Ifthe scale defines N unique positions along its length from start tofinish, then by making the (N+1)^(th) position the same as the 1^(st)position and, the (N+2)^(th) position the same as the 2^(nd) positionetc, the scale becomes cyclic. The length of one cycle of the scale codeis known as the repeat length. Lengths of scale longer than the repeatlength may be used, although positions defined along it will no longerbe unique. As shown in FIG. 3A, a length of scale defines uniquepositions X,Y over a length d. These positions are repeated over lengthd2.

[0036] Cyclic coding enables the scale to be manufactured continuouslyand stocked in long lengths. Any length subsequently cut will containvalid coding over its entire length. For example, FIG. 3B shows a lengthof scale with a certain length d being repeated cyclically. If a lengthL is cut it forms a continuous scale wherever it has been cut.

[0037] There is one bit of absolute data every pitch of the incrementalscale. The bits are grouped into codewords and start symbols. Each startsymbol is identical and serves to mark the start of each codeword,whereas the codewords are used to define the absolute position. Thechoice of start symbols is constrained as the chosen sequence for thestart symbol must not occur within any of the codewords otherwise partof the codeword could be misidentified as a start symbol. Furthermore,no codeword must end with the beginning of the start symbol or viceversa as this could result in the position of the codeword beingmisinterpreted by a few bits.

[0038] For the scale to be both palindromic and cyclic, the startsymbols must also be palindromic. In addition, only two codewords withina repeat length may be palindromic without having any repeatedcodewords. Both scales 18 shown in FIGS. 4A and 4B are cyclic andpalindromic with a repeat length d. The scale in FIG. 4A has twopalindromic codewords ABA and LML without any codewords being repeatedin length d. The scale in FIG. 4B has three palindromic codewords, ABA,FGF and LML. However FGF appears twice in the scale within the repeatlength d.

[0039] Several strategies are employed to ensure that the codewords useddo not degrade the metrological accuracy of the incremental channel.Some of these strategies involve not using codewords which badly affectthe incremental signal.

[0040] The first strategy is not to use codewords which do not containequal numbers of 1s and 0s. For example a 16-bit codeword should containexactly eight is and eight 0s. This ensures that the incremental signalsize remains constant as the readhead traverses the scale. It may bepossible to relax this constraint to codewords having between seven andnine is and 0s and possibly further.

[0041] The second strategy involves not using codewords which contain astring of more than a predetermined number of 1s or 0s in a row. Forexample, the maximum number of 1's in a row may be six, or morepreferably four. These long uniform sequences cause the incrementalLissajous, formed by two sinusoidal outputs in quadrature, to bemomentarily de-centred as the readhead passes over them.

[0042] The third strategy does not involve the non-use of any codewords.To minimise the effect of the absolute data on the incremental channel,the scale must appear uniform over the length of the incrementalchannel's reading window which is typically 50 bits long. This isachieved by rearranging the order of codewords along the scale to ensurethat any sequence of fifty consecutive bits has as near as possible thesame number of 1s (or equally 0s).

[0043] The readhead used to read the scale comprises at least one lightsource to illuminate the scale and at least one detector to determinethe incremental and absolute positions.

[0044] A simplified version of the readhead 54 and scale 18 is shown inFIG. 8. To read the incremental part of the scale there is provided alight source LS1, index grating 52 and detector 50 (e.g. photo diodearray). To read the absolute part of the scale there is provided a lightsource LS2, imaging lens 25 and detector 26 (e.g. linear image sensor).

[0045] Separate detectors may be used or alternatively both detectorscould be incorporated onto one chip (i.e. the same pixels detecting boththe absolute and incremental positions). Likewise, common or separatelight sources and lens arrays may be used.

[0046] A filtering readhead, as described in European Patent No.0207121, is suitable for use in determining the incremental position. Insuch a readhead, each point on the scale produces fringes at a detectorin the form of a sinusoidal wave. Each fringe at the detector isproduced by many points on the scale. If parts of the scale are missing,the signal at the detector will be slightly degraded but this effect isaveraged out and the frequency and sinusoidal shape remain the same.Only the base frequency of the scale is detected and harmonics, causedby missing parts of the scale, are filtered out.

[0047] Use of a filtering readhead therefore allows a non-diffractionquality scale to be used and the readhead is still able to determineincremental position to within one pitch of the scale when selectedscale 10 markings are missing or added. Thus the filtering readhead isable to read the hybrid absolute and incremental scale as if it was apurely incremental scale.

[0048] An optical detector system consisting of a linear array of pixelsmay be used to determine the absolute position. The maximum size of eachpixel is set by the Nyquist criterion, but preferably smaller pixels areused.

[0049] A microlens array 27, as shown in FIG. 6, may be used to imagethe scale 18 onto the detector 26 (e.g. the optical detector system).Each lens 28 is actually a pair of lenses 28A, 28B acting as an erectimaging system to produce a continuous image. Use of a microlens arrayproduces a much smaller working distance between the scale 18 anddetector 26 than in conventional imaging systems.

[0050] The absolute data needs to be extracted from the hybrid absoluteand incremental scale. A test is required to determine whether the valueof any particular pixel represents a data bit or not. Absolute data isonly embedded on the reflective lines of the original incremental scale.These data bits may now have a value of 0 or 1 depending on whether thereflective lines have been removed or left remaining. The originalnon-reflective lines on the incremental scale have remained unchanged.These have a value of 0 and are referred to as clock bits. There is aclock bit between each data bit.

[0051] A typical scale 18, as shown in FIG. 5, may have a 40 μm pitchwith, for example, 5.12 pixels 24 per pitch on the detector and unityoptical magnification between the scale and detector. There willtherefore be either a data bit (1 or 0) or a clock bit (C) at every 2.56pixels on the detector (i.e. every half scale pitch). If a pixel undertest (P) represents a data bit then every (m+1)^(th) position on eitherside of P will be a clock bit. Therefore there should be clock bits atthe following pixel locations:

[0052] . . . , . . . , (−5×2.56), (−3×2.56), (−1×2.56), (+1×.2.56),(+3×2.56), (+5×2.56), . . . , . . .

[0053] As fractional pixels do not exist, the following pixels should beclosest to the clock data relative to the pixel under test:

[0054] −23, −18, −13, −8, −3, +3, +8, +13, +18, +23.

[0055] The values at these locations (i.e. between 1 and 0) are summedtogether. The lower the total the more likely the pixels are torepresent clock bits and therefore the more likely the pixel under testis to represent a data bit. As the exact magnification is not known(because of variation due to the rideheight of the readhead forexample), it is only useful to search for clock bits within a certaindistance of the pixel under test. Searching for clock bits too far fromthe pixel under test may result in them being out-of-step with theirtrue positions due to magnification errors.

[0056] It is not possible to locate the first data bit in the image bythis method as it is not possible to read sufficient pixels on eitherside of this data bit. For the same reasoning it is not possible tolocate the last data bit on the image by this method. The data bitsfurther towards the middle of the image are determined by the aboveprocess then, assuming the magnification is constant, data bits at eachend can be read out as the number of pixels between each data bit is nowknown.

[0057] At this stage a block of extracted data has been created. Theflow diagram in FIG. 7 summarises how the coarse absolute position maybe determined from the extracted absolute data. This block of extractedabsolute data 32 should contain a little over 4 codewords of data and atleast 3 start symbols. Each start symbol is identical and in thisexample-is 9 bits long. The extracted data is scanned 34 and every 9-bitblock is compared with the start symbol sequence 36. The goodness ofmatch of a 9-bit block of data is determined by inverting each bit ofthe data block if its corresponding bit in the start symbol sequenceis 1. The values of all 9 bits in the block are summed and the result isthe goodness of match 38, the lower the value the better the match. Ifthe start symbols are not correctly spaced (i.e. with exactly onecodeword between each start symbol) then the image must be corrupted. Inthis case the image is discarded and the process restarts from thebeginning with a new image 30.

[0058] Once the start symbols have been found 40, the locations of threecomplete codewords in the extracted data are calculated. This may bedone by the use of a look-up table permanently stored in the readhead'smemory which is used to decode the three codewords. Each series of threeconsecutive words in the look-up table is compared with the three wordsfrom the image 42. In each case a goodness of match is calculated 44 inthe same way as for calculating the start symbols. The best matchposition in the look-up table gives the coarse absolute position of thereadhead. The goodness of match coefficient of the second best match isalso stored and this coefficient is then used to determine thetrustworthiness of the coarse position 46. If the best match is onlymarginally better than the second best match then the reported coarseposition is untrustworthy. Whereas if the best match was much betterthan the second best match the degree of confidence is higher.Thresholds can be applied to this value to determine whether thereadhead uses the data to calculate the coarse absolute position 48 orscraps the result and starts again with a new image 30.

[0059] Assuming that the data is deemed to be sufficiently trustworthy,the final step is to calculate the absolute position. Four pieces ofdata are required. These are (a) the coarse position from the look-uptable (to the nearest codeword on the scale), (b) the position of thestart of the first word in the extracted data (to the nearest scalepitch), (c) the position of the start of the first complete data bit inthe original image (to the nearest detector pixel) and (d) the phase ofthe Lissajous from the incremental channel (to the unit of resolution).

[0060] (a) and (b) are sufficient to calculate the absolute position ofthe readhead to the nearest scale pitch. (d) is used to determine theposition within one scale pitch to the required final resolution.However it is possible to get a position error of one scale pitch fromthis information alone. (c) contains sufficient information to check forthis and correct the position if necessary.

[0061] This invention may be carried out using a light-transmissivescale instead of a light-reflective scale.

[0062] Although this embodiment describes a linear scale and readhead,this invention could also be suitable for a rotary scale or atwo-dimensional scale.

[0063] Furthermore, the scale is not limited to binary coding.Multi-level coding may also be used. For example if the scale comprisesa glass plate with chrome deposited on it, the code could be produced byleaving clear glass for the clock bits, using half-density chrome forthe “0” data bits and full-density chrome for the “1” data bits.Alternatively the “0” data bits may comprise dotted lines and the “1”data bits may comprise solid lines.

[0064] This invention would also be suitable for non-optical scales, forexample capacitative or magnetic scales.

1. A measurement scale comprising: an incremental scale track comprisinga series of lines having a first property, and generally alternatinglines having a second property; characterised in that absolute positiondata is embedded in the incremental scale track in the form of discretecodewords.
 2. A measurement scale according to claim 1 wherein the lineshaving a first property are light reflecting or light transmitting andwherein the lines having a second property are non-reflecting ornon-transmitting.
 3. A measurement scale according to any precedingclaim wherein extra or fewer lines are provided having one of saidproperties, compared to those having the other property, in patternswhich form said codewords, thereby embedding the absolute data in theincremental scale track.
 4. A measurement scale according to claim 1 orclaim 2 wherein the width or spacing of the lines in the incrementalscale track are varied, thereby embedding the absolute data in theincremental scale track.
 5. A measurement scale according to anypreceding claim wherein the lines having the first or second propertyextend substantially across the width of the scale.
 6. A measurementscale according to any preceding claim wherein the absolute data on thescale is palindromic.
 7. A measurement scale according to any precedingclaim wherein the beginning of each codeword is marked by a startsymbol, each start symbol being identical.
 8. A measurement scaleaccording to any preceding claim wherein the codewords define N uniquepositions over a length of scale, this length being repeated such thatthe (N+1)th position is the same as the 1^(st) position.
 9. Ameasurement scale according to any preceding claim wherein the absolutedata consists of binary codes.
 10. A measurement scale according toclaim 9 wherein each codeword has substantially the same number of 1'sand 0's.
 11. A measurement scale according to claim 9 wherein eachcodeword only contains strings of six or less continuous 1's or 0's. 12.A measurement scale according to claim 9 wherein the codewords arearranged such that within any length of scale of predetermined lengththere are substantially the same number of 1's.
 13. A system formeasuring absolute position comprising a measurement scale and a scalereader relatively movable with respect to each other; wherein themeasurement scale comprises an incremental scale track with a series oflines having a first property generally alternating with lines having asecond property and absolute position data is embedded in theincremental scale track in the form of discrete codewords; and the scalereader includes a light source to illuminate the scale, an incrementalreadhead to determine the incremental position and an imaging system anda detector system to determine the absolute position.
 14. A system formeasuring absolute position according to claim 13 wherein the lineshaving a first property are light reflecting or light transmitting andwherein the lines having a second property are non-reflecting ornon-transmitting.
 15. A system for measuring absolute position accordingto any of claims 13-14 wherein the readhead used to determine theincremental position is a filtering readhead.
 16. A system for measuringabsolute position according to any of claims 13-15 wherein the detectorsystem comprises a linear array of pixels.
 17. A system for measuringabsolute position according to any of claims 13-16 wherein a microlensarray is used to image the scale onto the detector system.
 18. A systemfor measuring absolute position according to any of claims 13-17wherein: each absolute bit of data has a value of 1 or 0; wherein thereis a clock bit with a value of 0 between each absolute data bit; whereinit is determined whether any bit of the scale is an absolute data bit ora clock bit by measuring the values of the (m+1)^(th) bits on eitherside of that bit, where m=any even integer; and wherein the values ofthese bits are summed together, such that if the sum is smaller than apredetermined value the bit is an absolute data bit.
 19. A measurementsystem according to any of claims 13-18 wherein the beginning of eachcodeword is marked by a start symbol, and wherein the identification ofthe start symbols on the scale is used to locate the absolute codewordson the scale.
 20. A system for measuring absolute position according toany of claims 13-19 wherein a look-up table is used to determine acoarse absolute position by comparing absolute position data extractedfrom the scale with absolute codewords in the look-up table.
 21. Asystem for measuring absolute position according to claim 20 wherein:the goodness of match between the codeword in the look-up table and thecodeword extracted from the scale is determined by: comparing thesequence of an n-bit block of extracted data with the n-bit codeword inthe look-up table; wherein each bit of extracted data whosecorresponding bit in the codeword in the look-up table is 1 is inverted;and wherein the values of the n bits of extracted data are summedtogether; such that if the summed value is low, the match is good.
 22. Asystem for measuring absolute position according to any of claims 20-21wherein the absolute position may be determined to within oneincremental scale pitch by combining the coarse absolute position withthe position of the start of the first codeword in the data extracted bythe detector system and the location of the first complete data bit inthe data extracted by the detector system.
 23. A system for measuringabsolute position according to claim 22 wherein the absolute positionmay be determined to within a fraction of a scale pitch by combining theabsolute position with the incremental position.